﻿using System;
using System.Collections.Generic;

namespace Pap.Data
{
    /// <summary>
    /// 
    /// </summary>
    public interface ISetting : IEntity
    {
        /// <summary>
        /// Gets or sets the label.
        /// </summary>
        /// <value>
        /// The label.
        /// </value>
        string Label { get; set; }
        /// <summary>
        /// Gets or sets the key.
        /// </summary>
        /// <value>
        /// The key.
        /// </value>
        string Key { get; set; }
        /// <summary>
        /// Gets or sets the value.
        /// </summary>
        /// <value>
        /// The value.
        /// </value>
        string Value { get; set; }
        //TODO: Change the type to ICommitee when it's done.
        /// <summary>
        /// Gets or sets the committee ID.
        /// </summary>
        /// <value>
        /// The committee ID.
        /// </value>
        Guid CommitteeID { get; set; }

        /// <summary>
        /// Gets or sets the field validator.
        /// </summary>
        /// <value>
        /// The field validator.
        /// </value>
        List<ValidatorBase> FieldValidator { get; set; }
        /// <summary>
        /// Gets or sets the type of the editor.
        /// </summary>
        /// <value>
        /// The type of the editor.
        /// </value>
        string EditorType { get; set; }
        /// <summary>
        /// Gets or sets the editor params.
        /// </summary>
        /// <value>
        /// The editor params.
        /// </value>
        Dictionary<string, string> EditorParams { get; set; }
    }
}
